package com.xh.bussiness.practice.service;



import com.xh.bussiness.practice.bean.dto.PracticeDto;
import com.xh.bussiness.practice.bean.dto.PracticeGroupByDateDto;
import com.xh.bussiness.practice.bean.request.PracticeRequest;
import com.xh.bussiness.practice.bean.request.SavePracticeRequest;
import com.xh.bussiness.practice.model.Practice;
import com.xh.core.bean.AjaxResult;
import com.xh.core.service.IBaseService;
import com.xh.core.bean.XhPage;
import org.apache.ibatis.annotations.Param;

import java.text.ParseException;
import java.util.List;
import java.util.Map;

/**
 * <p>
 * 作业表 服务类
 * </p>
 *
 * @author Pitt
 * @since 2021-01-26
 */
public interface IPracticeService extends IBaseService<Practice> {

    /**
     * 分页查询方法
     * @param page
     * @param bean
     * @return
     */
    public Map<String, List<Practice>> queryPracticePage(XhPage page, PracticeRequest bean);

    /**
     * 查询方法
     * @param bean
     * @return
     */
    public List queryPractice(PracticeRequest bean);

    String publishPractice(SavePracticeRequest request);

    XhPage<PracticeGroupByDateDto> queryPublishPracticePage(PracticeRequest request);

    PracticeDto queryPracticeDetailById(String practiceId);

    XhPage queryPracticeByClassId(XhPage page, PracticeRequest bean);

    XhPage practiceAnalysis(PracticeRequest bean);

    /**
     * 逻辑删除作业
     * @author 赵文博
     * @date 2021/4/25 10:21
     * @param id
     * @return void
     **/
    Boolean deletePracticeById(@Param("id") String id);

    List queryQuestionByPracticeId(String practiceId,String type);
}
